package icu.qx.pbs.domain;

import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

import icu.qx.pbs.domain.vo.ProcedureMaterial;
import lombok.ToString;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 工艺路线工序对象 pbs_proute_procedure
 *
 * @author yong
 * @date 2024-07-11
 */
@ToString
public class PbsProuteProcedure extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 工艺路线code
     */
    private String ppProuteCode;
    private PbsProcedureRoute pbsProcedureRoute;

    /**
     * 工序code
     */
    private String ppProcedureCode;
    private PbsProcedure pbsProcedure;
    private String ppProcedureName;
    /**
     * 工序顺序 0优先级最大
     */
    @Excel(name = "工序顺序 0优先级最大")
    private Integer ppSort;

    /**
     * 是否为关键工序 0不是 1是
     */
    @Excel(name = "是否为关键工序 0不是 1是")
    private String ppKey;

    private String ppCalcType;

    private BigDecimal ppCalcSingle;

    /**
     * 显示颜色 十六进制
     */
    @Excel(name = "显示颜色 十六进制")
    private String ppColor;

    /**
     * 准备时间
     */
    @Excel(name = "准备时间")
    private BigDecimal ppReadyTime;

    /**
     * 等待时间
     */
    @Excel(name = "等待时间")
    private BigDecimal ppWaitTime;

    /**
     * 备注
     */
    @Excel(name = "备注")
    private String ppDesc;

    private List<ProcedureMaterial> selectedMaterial = new ArrayList<>();

    public String getPpCalcType() {
        return ppCalcType;
    }

    public void setPpCalcType(String ppCalcType) {
        this.ppCalcType = ppCalcType;
    }

    public BigDecimal getPpCalcSingle() {
        return ppCalcSingle;
    }

    public void setPpCalcSingle(BigDecimal ppCalcSingle) {
        this.ppCalcSingle = ppCalcSingle;
    }

    public String getPpProcedureName() {
        return ppProcedureName;
    }

    public void setPpProcedureName(String ppProcedureName) {
        this.ppProcedureName = ppProcedureName;
    }

    public PbsProcedureRoute getPbsProcedureRoute() {
        return pbsProcedureRoute;
    }

    public void setPbsProcedureRoute(PbsProcedureRoute pbsProcedureRoute) {
        this.pbsProcedureRoute = pbsProcedureRoute;
    }

    public PbsProcedure getPbsProcedure() {
        return pbsProcedure;
    }

    public void setPbsProcedure(PbsProcedure pbsProcedure) {
        this.pbsProcedure = pbsProcedure;
    }

    public List<ProcedureMaterial> getSelectedMaterial() {
        return selectedMaterial;
    }

    public void setSelectedMaterial(List<ProcedureMaterial> selectedMaterial) {
        this.selectedMaterial = selectedMaterial;
    }

    public void setPpProuteCode(String ppProuteCode) {
        this.ppProuteCode = ppProuteCode;
    }

    public String getPpProuteCode() {
        return ppProuteCode;
    }

    public void setPpProcedureCode(String ppProcedureCode) {
        this.ppProcedureCode = ppProcedureCode;
    }

    public String getPpProcedureCode() {
        return ppProcedureCode;
    }

    public Integer getPpSort() {
        return ppSort;
    }

    public void setPpSort(Integer ppSort) {
        this.ppSort = ppSort;
    }

    public void setPpKey(String ppKey) {
        this.ppKey = ppKey;
    }

    public String getPpKey() {
        return ppKey;
    }

    public void setPpColor(String ppColor) {
        this.ppColor = ppColor;
    }

    public String getPpColor() {
        return ppColor;
    }

    public void setPpReadyTime(BigDecimal ppReadyTime) {
        this.ppReadyTime = ppReadyTime;
    }

    public BigDecimal getPpReadyTime() {
        return ppReadyTime;
    }

    public void setPpWaitTime(BigDecimal ppWaitTime) {
        this.ppWaitTime = ppWaitTime;
    }

    public BigDecimal getPpWaitTime() {
        return ppWaitTime;
    }

    public void setPpDesc(String ppDesc) {
        this.ppDesc = ppDesc;
    }

    public String getPpDesc() {
        return ppDesc;
    }

}
